/*oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoO

Authors: Nitay Megides
		 Rachel Banino

Project: Exercise 2

Using: Hw1Types.h

Description:
A general module for general functions. Used throughout the project
oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoO*/

#ifndef GENERAL_H
#define GENERAL_H

#include <windows.h>
#include <stdio.h>

///////////////////////////////////////////////
// Helpers
BOOL VerifyMemory(void* ptr);
BOOL VerifyFileOpen(void* ptr);

///////////////////////////////////////////////
// Reports stuff to the console
void ReportThreadError();
void ReportThreadExitCode(DWORD exitCode);
void ReportLoadError();
void ReportTestErrors();

typedef enum {FILECOMPARE_IDENTICAL, FILECOMPARE_DIFFERENT, FILECOMPARE_ERROR} EFileCompareResult;

///////////////////////////////////////////////
// Compare between two binary files
EFileCompareResult CompareFiles(TCHAR* filename1, TCHAR* filename2);
#endif // GENERAL_H